package com.ssh.dao;

import java.util.List;

//import com.ssh.model.People;
import com.ssh.dataobject.JqGridSearchTo;
import com.ssh.dataobject.PageModel;
import com.ssh.model.Goods;
import com.ssh.model.TableGoods;
import com.ssh.dataobject.Page;

public interface IGoodsDAO {

	// property constants
	public static final String CODE = "code";
	public static final String NAME = "name";
	public static final String EPC = "epc";
	public static final String PEOPLECODE = "peoplecode";
	public static final String RELATIVES = "relatives";
	public static final String ROWID = "rowid";
	public static final String DETAILS = "details";

	public abstract void save(TableGoods goods);

	public abstract void delete(TableGoods goods);

	public abstract TableGoods getGoods(Integer goodsid);

	public abstract TableGoods findGoods(String queryString);

	// public abstract JqGridSearchTo findAll(JqGridSearchTo to) ;

	public abstract TableGoods findById(java.lang.Integer id);

	public abstract List findByExample(TableGoods instance);

	public abstract List findByProperty(String propertyName, Object value);

	public abstract List findByCode(Object code);

	public abstract List findByName(Object name);

	public abstract List findByEpc(Object instrution);

	public abstract List findByPeoplecode(Object peoplecode);

	public abstract List findByDetails(Object details);

	public abstract List<TableGoods> findAll();

	public abstract List<TableGoods> findAllPage(int offset, int pageSize);

	public abstract int countGoods();

	// public abstract PageModel queryPeople(JqGridSearchTo to);

	public abstract TableGoods merge(TableGoods detachedInstance);

	public abstract void attachDirty(TableGoods goods);

	public abstract void attachClean(TableGoods instance);

	public abstract void update(TableGoods goods);

	public abstract List<TableGoods> findGoodsListByHQL(String hql);
}